package mx.itesm.papamastodon.dienosaurs;

import android.content.Context;
import android.content.SharedPreferences;

import org.andengine.engine.camera.Camera;
import org.andengine.entity.scene.background.SpriteBackground;
import org.andengine.entity.sprite.Sprite;
import org.andengine.entity.text.Text;
import org.andengine.entity.text.TextOptions;
import org.andengine.opengl.font.Font;
import org.andengine.opengl.util.GLState;
import org.andengine.util.adt.align.HorizontalAlign;

/**
 * Puntaje
 */

public class EscenaPuntaje extends EscenaBase {
    private Sprite spriteFondo; //(el fondo de la escena, estático)
    private Text text;
    private Font fuente;
    int score;
    int scorh;

    @Override
    public void crearEscena() {
        // Creamos el sprite de manera óptima
        spriteFondo = new Sprite(0, 0, admRecursos.regionFondoPuntaje, admRecursos.vbom) {
            @Override
            protected void preDraw(GLState pGLState, Camera pCamera) {
                super.preDraw(pGLState, pCamera);
                pGLState.enableDither();
            }
        };
        // Configuración de la imagen

        fuente=admRecursos.fuente;
        text = new Text(ControlJuego.ANCHO_CAMARA/2, ControlJuego.ALTO_CAMARA/2, fuente, "1234567890 finalisar gracias", new TextOptions(HorizontalAlign.LEFT), admRecursos.vbom);
        spriteFondo.setPosition(ControlJuego.ANCHO_CAMARA / 2, ControlJuego.ALTO_CAMARA / 2);
        Context conti = ApplicationContextProvider.getContext();
        SharedPreferences prefs = conti.getSharedPreferences("myPrefsKey", Context.MODE_PRIVATE);
        SharedPreferences.Editor editor = prefs.edit();
        if(prefs.getInt("ultimoNivel",0)==1){
            score = prefs.getInt("nuevoScore1",0);
            scorh =  prefs.getInt("highScore1",0);
        }
        if(prefs.getInt("ultimoNivel",0)==2){
            score = prefs.getInt("nuevoScore2",0);
            scorh =  prefs.getInt("highScore2",0);
        }
        if(prefs.getInt("ultimoNivel",0)==3){
            score = prefs.getInt("nuevoScore3",0);
            scorh =  prefs.getInt("highScore2",0);
        }

        if(scorh==score){
            text.setText(""+score);
        }
        else{
            text.setText(""+score);

        }
        // Crea el fondo de la pantalla
        SpriteBackground fondo = new SpriteBackground(1, 0.5f, 0, spriteFondo);
        setBackground(fondo);
        setBackgroundEnabled(true);
        attachChild(text);
    }

    @Override
    public void onBackKeyPressed() {
        // Regresar al MENU principal
        admEscenas.crearEscenaMenu();
        admEscenas.setEscena(TipoEscena.ESCENA_MENU);
        admEscenas.liberarEscenaPuntaje();
    }

    @Override
    public TipoEscena getTipoEscena() {
        return TipoEscena.ESCENA_PUNTAJE;
    }

    @Override
    public void liberarEscena() {
        // Liberar cada recurso usado en esta escenax
        spriteFondo.detachSelf();   // Se desconecta de la escena
        spriteFondo.dispose();      // Libera la memoria

        this.detachSelf();      // La escena se deconecta del engine
        this.dispose();         // Libera la memoria
    }


}